package com.cdtu.room.mapper;

import java.util.List;
import com.cdtu.room.domain.Equipment;
import com.cdtu.room.dto.EquipmentDto;
import com.cdtu.room.vo.EquipmentVo;

/**
 * 会议室设备Mapper接口
 * 
 * @author hcc
 * @date 2024-02-27
 */
public interface EquipmentMapper 
{
    /**
     * 查询会议室设备
     * 
     * @param equipmentId 会议室设备主键
     * @return 会议室设备
     */
    public Equipment selectEquipmentByEquipmentId(Long equipmentId);

    /**
     * 新增会议室设备
     * 
     * @param equipment 会议室设备
     * @return 结果
     */
    public int insertEquipment(Equipment equipment);

    /**
     * 修改会议室设备
     * 
     * @param equipment 会议室设备
     * @return 结果
     */
    public int updateEquipment(Equipment equipment);

    /**
     * 删除会议室设备
     * 
     * @param equipmentId 会议室设备主键
     * @return 结果
     */
    public int deleteEquipmentByEquipmentId(Long equipmentId);

    /**
     * 批量删除会议室设备
     * 
     * @param equipmentIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteEquipmentByEquipmentIds(Long[] equipmentIds);

    /**
     * 查询会议室设备列表
     * @param equipmentVo
     * @return
     */
    List<EquipmentDto> getEquipmentList(EquipmentVo equipmentVo);

    /**
     * 查询会议室设备列表
     * @param equipment
     * @return
     */
    List<Equipment> selectEquipmentList(Equipment equipment);

    /**
     * 校验会议室下是否有设备通过会议室ID
     * @param roomId
     * @return
     */
    List<Equipment> getEquipmentByRoomId(Long roomId);

    /**
     * 获取会议室设备名称
     * @param roomId
     * @return
     */
    List<Equipment> getEquipmentNameByRoomId(Long roomId);
}
